package com.kclm.xsap.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.math.BigDecimal;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;


@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper=false)
@TableName("t_recharge_record")
@Accessors(chain = true)
public class RechargeRecordEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	
	@TableId
	private Long id;
	
	@NotNull(message = "请输入充值次数")
	private Integer addCount;
	
	@NotNull(message = "请输入演唱天数")
	private Integer addDay;
	
	@NotNull(message = "请输入实收金额")
	private BigDecimal receivedMoney;
	
	@NotBlank(message = "请确认支付方式")
	private String payMode;
	
	private String operator;
	
	private String note;
	
	private Long memberBindId;
	
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@TableField(fill = FieldFill.INSERT)
	private LocalDateTime createTime;
	
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private LocalDateTime lastModifyTime;
	
	@Version
	private Integer version = 1;

	
	@TableField(exist = false)
	@ToString.Exclude
	private MemberBindRecordEntity memberBindRecordEntity;

	private Long logId;

}
